package cn.ywang.pattern.adapter.passport.adapter;

import cn.ywang.pattern.adapter.ResultMsg;

/**
 * 在适配器模式中，该接口类可有可无
 * 而在模版模式中，一定要是抽象类
 *
 * @author BeatificWang
 * @date 2019/3/19 23:38
 */
public interface LoginAdapter {
	/**
	 * 钩子方法，用于对代码逻辑进行微调
	 *
	 * @param adapter
	 * @return
	 */
	boolean support(Object adapter);

	/**
	 * 注册
	 *
	 * @param id
	 * @param adapter
	 * @return
	 */
	ResultMsg register(String id, Object adapter);

	/**
	 * 登录
	 *
	 * @param id
	 * @param adapter
	 * @return
	 */
	ResultMsg login(String id, Object adapter);
}
